package de.projectgoodmorning.alarm.activities.util;

import android.app.Activity;
import android.view.View.OnClickListener;
import android.widget.Button;
import de.projectgoodmorning.alarm.R;

/**
 * Die Actionbar ist eine Hilfsklasse, welche die Knoepfe der Actionbars
 * der einzelnen Activities verwaltet.
 * Ueber das Callback-Muster koennen beliebiege Events fuer die Buttons
 * festgelegt werden.
 */
public class Actionbar {

	private Button add, settings, bluetooth, back;
	
	/**
	 * holt sich die Zeiger auf die vorhandenen Buttons der Actionbar ueber
	 * der uebergebene Activity.
	 * 
	 * @param activity		erwartet die aktive Activity 
	 * 						(Diese sollte actionbar.xml in layout enthalten)
	 */
	public Actionbar( Activity activity ) {
		add = ( Button ) activity.findViewById( R.id.actionbarAddButton );
		settings = ( Button ) activity.findViewById( R.id.actionbarSettingsButton);
		bluetooth = ( Button ) activity.findViewById( R.id.actionbarBtSettingsButton );

		back = ( Button ) activity.findViewById( R.id.actionbarBackButton );
	}
	
	/**
	 * legt eine Routine fest, welche ausgefuehrt wird, wenn der "Add"
	 * Button ausgefuehrt wird.
	 */
	public void setOnAddClicked( OnClickListener listener ) {
		add.setOnClickListener( listener );
	}
	
	/**
	 * legt eine Routine fest, welche ausgefuehrt wird, wenn der "Settings"
	 * Button ausgefuehrt wird.
	 */
	public void setOnSettingsClicked( OnClickListener listener ) {
		settings.setOnClickListener( listener );
	}
	
	/**
	 * legt eine Routine fest, welche ausgefuehrt wird, wenn der "Bluetooth"
	 * Button ausgefuehrt wird.
	 */
	public void setOnBluetoothClicked( OnClickListener listener ) {
		bluetooth.setOnClickListener( listener );
	}
	
	/**
	 * legt eine Routine fest, welche ausgefuehrt wird, wenn der "Back"
	 * Button ausgefuehrt wird.
	 */
	public void setOnBackButtonClicked( OnClickListener listener ) {
		back.setOnClickListener( listener );
	}
}
